1. Field of the Invention
The present invention relates to a storage device array system, an information processing apparatus, a storage device array control method, and a program.
2. Description of the Related Art
In general, a disk array apparatus includes a disk array and a disk array controller. The disk array includes a plurality of magnetic disk drives (hereinafter, referred to as “HDDs”). The array controller can control access to each HDD (i.e., a member HDD) of the disk array.
To improve the reliability, the disk array apparatus is generally configured to store the same data in each of the plurality of HDDs. Further, to increase an access speed, the disk array apparatus causes the plurality of HDDs to operate in parallel with each other for discrete reading/writing processing.
The disk array controller receives writing data from the host computer and transfers the received writing data to the plurality of HDDs. Alternatively, the disk array controller can generate redundant data, as data correction information, to be attached to the writing data and can transfer the generated redundant data to any one of the plurality of HDDs.
Thus, in a case where one of a plurality of HDDs fails, the disk array controller can restore data in a failed HDD based on the redundant data or based on both the redundant data and the data in the remaining HDDs.
One of conventionally known data redundancy methods is a Redundant Arrays of Inexpensive Disks (RAID) method. The RAID method is characterized by the usage of a plurality of RAID levels classified considering a relationship between RAID data and redundant data, in which RAID level 1 and RAID level 5 are representative RAID levels.
The RAID level 1 requires at least two HDDs. When the RAID level is RAID level 1, the disk array controller transfers the writing data received from the host computer to each of the plurality of HDDs. In other words, the disk array controller writes the same data into two or more HDDs. According to the above-described configuration for realizing the RAID level 1, if one HDD is failed, the disk array controller switches the failed HDD to another HDD (i.e., a new HDD) to improve the reliability. Further, the disk array controller copies all data of the failed HDD to the new HDD to restore the data.
The RAID level 5 requires at least three HDDs. For example, if N represents the total number of HDDs required to realize the RAID level 5, the disk array controller divides the writing data received from the host computer and distributes the divided data to N−1 HDDs. Further, the disk array controller performs an exclusive OR operation on the divided data and transfers a calculation result (parity data) to the remaining one HDD. When the RAID level is RAID level 5, an HDD dedicated to the parity data is not provided and the disk array controller distributes the parity data in all HDDs.
Further, in data update processing, the disk array controller reads pre-writing data (old data) stored in an internal area of the HDD, which serves as a storage destination of the writing data. The disk array controller further reads pre-update parity data (old parity data) stored in an area of another HDD corresponding to the storage destination of the writing data. Then, the disk array controller performs an exclusive OR operation on the writing data (new data) received from the host computer and the old data/old parity data to generate updated parity data (new parity data). The disk array controller updates the original parity data based on the updated parity data.
When the RAID level is RAID level 5, if one HDD has failed, the disk array controller reads data for each stripe, which is the units to manage a disk area of the disk array, from another HDD. The disk array controller performs an exclusive OR operation on the readout data. Using the RAID function enables restoring data of the failed HDD in a new HDD.
The disk array apparatus having the above-described RAID configuration can realize data recovery of a failed HDD. On the other hand, when an HDD has a large capacity, an unused area of the HDD may increase during the recovery of the HDD. In this case, if a faulty sector of an unused area of the HDD is detected, the processing for recovering the HDD may stop and the effect of improving the reliability according to the RAID method cannot be obtained as intended.
Considering the above-described situation, as discussed in Japanese Patent Application Laid-Open No. 2002-175158, an HDD management table can be provided in the disk array apparatus. According to the discussed conventional technique, the disk array apparatus determines whether a failure occurrence position in the HDD is a used area with reference to the HDD management table. Further, the disk array apparatus restores only the data stored in the used area of the HDD. Using the above-described conventional technique is effective to eliminate adverse effects of faulty sectors in unused areas.
However, in a case where a failure occurrence rate of the HDD is relatively low, the following problem may arise if the disk array apparatus is configured to include the HDD management table and functionally operate to determine the necessity of recovery. For example, the cost of the disk array apparatus may increase. The configuration of the disk array apparatus may become complicated. Further, the HDD access performance may deteriorate due to updating of the HDD management table.
In this case, to prevent the HDD access performance from deteriorating, it may be effective to extend the update interval of the HDD management table. However, if the update interval of the HDD management table is extended, an actual usage state of the HDD may not coincide with information of the HDD management table. In the worst case, even when a failure occurs in a used area, the disk array apparatus may erroneously determine that the data recovery is unnecessary.